Computers have become highly integrated in the workforce, in the home, in mobile devices, and many other places. Computers can process massive amounts of information quickly and efficiently. Software applications designed to run on computer systems allow users to perform a wide variety of functions including business applications, schoolwork, entertainment and more. Software applications are often designed to perform specific tasks, such as word processor applications for drafting documents, or email programs for sending, receiving and organizing email.
Increasingly, these software applications are being run on smaller, reduced-performance computing devices such as mobile phones, netbooks and tablets. These smaller, more mobile devices are often limited in their processing power by smaller central processing units (CPUs), less memory and battery life concerns. As a result, CPU-intensive software applications are typically not implemented on these devices, and are reserved for larger, typically stationary devices. Consequently, developers of applications for reduced-performance devices limit the features they include in their applications.